tg-me.com/proglib_academy/2792
Last Update:
Когда Вы пишете SQL-запрос, может показаться, что всё выполняется сверху вниз — SELECT, FROM, WHERE…
Но это не так. Под капотом запрос исполняется в совершенно другом порядке:
FROM — сначала выбирается основная таблица
JOIN — затем к ней присоединяются другие таблицы
ON — указывается, как именно таблицы связываются
WHERE — происходит фильтрация строк до группировки
GROUP BY — строки группируются по указанному полю
HAVING — фильтрация уже сгруппированных данных
SELECT — выбираются нужные столбцы
ORDER BY — сортировка результата
LIMIT — ограничение количества строк
Обратите внимание: оператор SELECT выполняется почти в самом конце, а WHERE работает до GROUP BY. Именно поэтому нельзя ссылаться в SELECT на столбцы, которых нет в GROUP BY или агрегатах.
Proglib Academy #буст